#ifndef __INA226_H__
#define __INA226_H__
#include "bflb_i2c.h"
        
#define IN226_ADDR                 0x40  //A0=GND，A1=GND // R_addr=1, W_addr=0
 
#define Config_Reg                 0x00  //配置寄存器  读写
#define Shunt_V_Reg                0x01  //分流电压    读
#define Bus_V_Reg                  0x02  //总线电压    读
#define Power_Reg                  0x03  //电源功率    读
#define Current_Reg                0x04  //电流        读
#define Calib_Reg                  0x05  //校准，设定满量程范围以及电流和功率测数的 
#define Mask_En_Reg                0x06  //屏蔽 使能 警报配置和转换准备就绪
#define Alert_Reg                  0x07  //包含与所选警报功能相比较的限定值
#define Man_ID_Reg                 0xFE  //0x5449
#define ID_Reg                     0xFF  //0x2260
 
uint16_t INA226_Read2Byte(uint8_t reg_addr);
int INA226_Write2Byte(uint8_t reg_addr,uint16_t reg_data);
void INA226_Init(void);
void INA226_TEST(void);
 
float INA226_GetVoltage(void);//获取总线电压mV
float INA226_GetShunt_Current(void);//获取分流电流mA
float INA226_GetShuntVoltage(void);//分流电压mV
float INA226_Get_Power(void);//获取功率
#endif